package com.serve.oa.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.serve.oa.dto.BxtDto;
import com.serve.oa.dto.LeaveDto;
import com.serve.oa.dto.LeaveFlowDto;
import com.serve.oa.dto.TaskDto;
import com.serve.oa.entity.BxtLeave;
import com.serve.oa.entity.TblLog;
import com.serve.oa.entity.TblTask;
import com.baomidou.mybatisplus.extension.service.IService;
import com.serve.oa.entity.TtbLeave;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author __tyw
 * @since 2022-12-12
 */
public interface TblTaskService extends IService<TblTask> {


    //发起业务通用
    int add(Long id,int userid);


    int addLeave(LeaveDto leaveDto);

    int addLeaveFlow(LeaveFlowDto leaveDto);

    void inLog(TblLog tblLog);


    void ybdy() throws InterruptedException;

    Page<TaskDto> getMytaskPage(Page iPage, Long id);

    void delmylist(String id);

    TtbLeave getLeave(Integer taskId);

    List<TblLog> getLog(Integer taskId);

    Map getNolist();

    List<TaskDto>  myHandleTask(Long id);

    Boolean nextNode(Integer id, Integer curNode, Integer flowNo);

    int addBxt(BxtLeave bxtDto);

    BxtLeave getBxt(Integer taskId);

    List<Map> listAll();

    String getTime(String id);

    Object getFlowDeatil(Map<String, Object> variable);
}
